package com.demo6;

public class Test {
    public static void main(String[] args) {
        /*
        需要大家理解匿名内部类的格式，而不是硬记:
        new类名或者接口名(){
        重写方法;
        };
         */


        //匿名内部类
        Swim swim=new Swim(){
            @Override
            public void swim() {
                System.out.println("重写了游泳的方法!");
            }
        };
        swim.swim();


        //匿名内部类
        Animal animal=new Animal(){
            @Override
            public void eat() {
                System.out.println("重写了吃东西的方法!");
            }
        };
        animal.eat();

        //匿名内部类的应用
        method(new Animal() {
            @Override
            public void eat() {
                System.out.println("动物吃东西!");
            }
        });
    }


    public static void method(Animal animal){
        animal.eat();
    }
}
